﻿package plugin.newvip.model
{
    import com.core.*;
    import com.sh.game.util.*;
    import flash.geom.*;
    import flash.utils.*;
    import manager.*;

    public class VipCheck extends Object
    {
        private static var _timeID:uint;
        public static var vipScouts:Array = [0, 880, 4980, 8000, 14800, 50000, 100000, 200000, 500000, 1000000, 2000000, 4000000, 7000000, 10000000, 15000000, 20000000];
        public static var vipstoreids:Array = [0, 73, 72, 71];

        public function VipCheck()
        {
            return;
        }// end function

        public static function VipCheckOver() : void
        {
            if (_timeID > 0)
            {
                clearTimeout(_timeID);
            }
            _timeID = 0;
            if (VipCheck.checkVip() < 0)
            {
                return;
            }
            var _loc_1:* = UserData.getOnlineData();
            var _loc_2:* = _loc_1.vip;
            var _loc_3:* = _loc_1.viptime;
            var _loc_4:* = ModelProxy.getValue("data", "servertime") + Number(getTimer());
            if (_loc_3 < _loc_4 + 86400000)
            {
                _timeID = setTimeout(showxufei, _loc_3 - _loc_4);
            }
            return;
        }// end function

        public static function showxufei() : void
        {
            if (_timeID > 0)
            {
                clearTimeout(_timeID);
                _timeID = 0;
            }
            var _loc_1:* = UIGlobel.pointsDic["vip"];
            PluginManager.instance.openPlugin("vipxufei", _loc_1);
            return;
        }// end function

        public static function checkVip() : int
        {
            var _loc_1:* = ModelProxy.getValue("vip", "getvip");
            if (_loc_1 == null)
            {
                return 0;
            }
            var _loc_2:* = _loc_1.vipLevel;
            return _loc_2;
        }// end function

        public static function checkVipLevel() : int
        {
            var _loc_1:* = ModelProxy.getValue("vip", "getvip");
            if (_loc_1 == null)
            {
                return 0;
            }
            var _loc_2:* = _loc_1.vipLevel;
            return _loc_2;
        }// end function

        public static function hasfunc(param1:int) : Number
        {
            var _loc_8:Object = null;
            var _loc_9:int = 0;
            var _loc_10:Object = null;
            var _loc_11:Object = null;
            if (VipCheck.checkVip() < 0)
            {
                return 0;
            }
            var _loc_2:Number = 0;
            var _loc_3:* = UserData.getOnlineData();
            var _loc_4:* = ModelProxy.getValue("vip", "getvip");
            var _loc_5:* = _loc_3.vipcache;
            var _loc_6:* = _loc_4.vipLevel;
            var _loc_7:Object = 0;
            if (param1 < 10)
            {
                _loc_8 = ConfigDictionary.data.vip;
                _loc_7 = _loc_8["func" + param1];
                if (param1 == 4)
                {
                    _loc_7 = 1;
                }
                if (_loc_5 != null && _loc_5.hasOwnProperty(param1))
                {
                    _loc_2 = int(_loc_7) - _loc_5[param1];
                }
            }
            else if (_loc_6 > 0)
            {
                _loc_9 = _loc_6;
                _loc_10 = ConfigDictionary.data.viplevel;
                _loc_11 = _loc_10[param1];
                _loc_7 = _loc_11[_loc_9];
                if (_loc_7 == "false")
                {
                    return 0;
                }
                if (_loc_7 == "true")
                {
                    return -1;
                }
                if (_loc_5 != null && _loc_5.hasOwnProperty(param1))
                {
                    _loc_2 = int(_loc_7) - _loc_5[param1];
                }
                else if (String(_loc_7).indexOf("%") != -1)
                {
                    _loc_2 = String(_loc_7).split("%")[0] / 100;
                }
                else
                {
                    _loc_2 = Number(_loc_7);
                }
            }
            return _loc_2;
        }// end function

        public static function hasfuncAttme(param1:int) : Number
        {
            var _loc_2:* = UserData.getOnlineData();
            var _loc_3:* = _loc_2.viplevel;
            var _loc_4:* = _loc_2.viptime;
            var _loc_5:* = _loc_2.vip;
            return hasfuncAtt(_loc_5, _loc_3, param1);
        }// end function

        public static function hasfuncAtt(param1:int, param2:int, param3:int) : Number
        {
            var _loc_4:* = ModelProxy.getValue("data", "servertime") + Number(getTimer());
            if (param1 == 0)
            {
                return 0;
            }
            var _loc_5:Number = 0;
            var _loc_6:* = ConfigDictionary.data.viplevel;
            var _loc_7:* = ConfigDictionary.data.viplevel[param3];
            var _loc_8:* = ConfigDictionary.data.viplevel[param3][param2];
            if (ConfigDictionary.data.viplevel[param3][param2] == null)
            {
                return 0;
            }
            var _loc_9:* = _loc_8.split("%");
            _loc_5 = _loc_8.split("%")[0];
            return _loc_5;
        }// end function

    }
}
